Method and system for wireless communication channel estimation

ABSTRACT

A method and system for selecting an algorithm for channel estimation in a wireless communication system are disclosed. According a parameter indicative of an accuracy of a channel estimation algorithm is determined. A selection between a first channel estimation algorithm and a second channel estimation algorithm is made based on the determined parameter.

FIELD

The present invention relates to a method and system for channelestimation in a wireless communication system, and more particularly todynamic selection of a channel estimation algorithm.

BACKGROUND

Channel estimation in a wireless communication system is needed forcoherent demodulation at a receiver, and is also used in multi-antennasystems to increase throughput or coverage using knowledge of thetransmitter and/or receiver. Channel estimation is affected by thechannel conditions such as signal to interference plus noise ratio(SINR), mobile velocity, and multi-path delay spread.

Typically, channel estimation involves estimating the channel between atransmitter and a receiver based on known pilot symbols. The pilotsymbols are transmitted periodically, for example, once per time slot,for each carrier frequency. To estimate the channel for data receivedbetween pilot symbols, an interpolation method is used. There existseveral interpolation algorithms that may be employed for channelestimation. Of these, first order interpolation algorithms are ofparticular interest because of their low complexity.

First order interpolation algorithms include, without limitation,averaging algorithms, linear interpolation algorithms, minimum meansquare error (MMSE) algorithms, and nearest neighbor algorithms. Ofthese methods, the MMSE algorithm exhibits the best performance overdifferent channel conditions such as low and high Doppler conditions,different delay spreads, as well as different SINR levels. However, theMMSE algorithm assumes knowledge of the Doppler frequency, which may notbe available or easily obtainable.

The averaging algorithm is a good alternative for low Doppler channels,i.e., Doppler channels where the mobile device is traveling at a lowspeed, as well as for channels with a low SINR, but performance of theaveraging algorithm decreases significantly for high Doppler channels.i.e., Doppler channels where the mobile device is traveling at a highspeed. The linear interpolation algorithm performs well in high Dopplerchannels, but is not good for low SINR channels and low Dopplerchannels. The nearest neighbor algorithm exhibits performance that isbetween the performance of the linear interpolation algorithms and theperformance of the averaging algorithms.

Therefore, what is needed is a channel estimation method that performswell under various channel conditions such as low and high Doppler, lowand high SINR, and different delay spreads.

SUMMARY

The present invention advantageously provides a method and system forselecting an algorithm for channel estimation in a wirelesscommunication system. According to one aspect, the invention provides amethod that includes calculating a parameter indicative of an accuracyof a channel estimation algorithm. The method further includes selectingbetween a first channel estimation algorithm and a second channelestimation algorithm based on the parameter.

According to another aspect, the invention provides a computer readablemedium containing computer readable instructions that, when executed bya processor, cause the processor to perform functions that includecalculating a parameter indicative of an accuracy of a channelestimation algorithm for estimating a channel in a communication system.The functions also include selecting a channel estimation algorithm toestimate a channel based on the parameter.

According to another aspect, the invention provides a communicationdevice that performs a channel estimate based on an algorithm. Thedevice includes a memory and a processor. The memory stores at least oneparameter indicative of an accuracy of a channel estimation algorithmfor channel estimation. The processor calculates the at least oneparameter, and selects a channel estimation algorithm based on the atleast one parameter.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present invention, and theattendant advantages and features thereof, will be more readilyunderstood by reference to the following detailed description whenconsidered in conjunction with the accompanying drawings wherein:

FIG. 1 is a block diagram of an exemplary wireless communication systembuilt in accordance with the principles of the present invention;

FIG. 2 is a graph of a signal to noise ratio versus Doppler frequency;

FIG. 3 is a graph of several cumulative distribution functions;

FIG. 4 is a flow chart of an exemplary process for selecting a channelestimation algorithm in accordance with the principles of the presentinvention;

FIG. 5 is a flow chart of an alternative exemplary process for selectinga channel estimation algorithm based on a measure of a temporalvariation of the channel in accordance with the principles of thepresent invention; and

FIG. 6 is a flow chart of an exemplary process for selecting a channelestimation algorithm based on a computed mean square error in accordancewith the principles of the present invention.

DETAILED DESCRIPTION

Before describing in detail exemplary embodiments that are in accordancewith the present invention, it is noted that the embodiments resideprimarily in combinations of apparatus components and processing stepsrelated to channel estimation in a wireless communication system.Accordingly, the system and method components have been representedwhere appropriate by conventional symbols in the drawings, showing onlythose specific details that are pertinent to understanding theembodiments of the present invention so as not to obscure the disclosurewith details that will be readily apparent to those of ordinary skill inthe art having the benefit of the description herein.

As used herein, relational terms, such as “first” and “second,” “top”and “bottom,” and the like, may be used solely to distinguish one entityor element from another entity or element without necessarily requiringor implying any physical or logical relationship or order between suchentities or elements.

Referring now to the drawing figures, in which like referencedesignators denote like elements, there is shown in FIG. 1 a blockdiagram of an exemplary wireless communication system built inaccordance with the principles of the present invention, the systemgenerally denoted as “10.” System 10 includes at least one base station12 and a plurality of user equipment 14 a and 14 b, referred tocollectively herein as user equipment 14. User equipment 14 may includemobile telephones, personal digital assistants, laptop computers andother portable or fixed equipment. The base station 12 and the userequipment 14 may communicate using a variety of encoding and modulationtechniques. In one embodiment, an Orthogonal Frequency DivisionMultiplex (OFDM) access method may be employed.

The base station 12 includes a memory 16 and a processor 18. The memory16 stores programmatic code to be executed by the processor 18, and alsostores at least one parameter 20 indicative of accuracy of a channelestimation algorithm. The processor 18 performs various functionsassociated with establishing and maintaining wireless communication withthe user equipment 14. The functions include parameter calculator 21,algorithm selector 22 and channel estimation 24.

The parameter calculator 21 performs calculation of a parameterindicative of accuracy of a channel estimation algorithm. In oneembodiment, the parameter indicative of accuracy of a channel estimationalgorithm may be based on a temporal variation of a wireless channel.The algorithm selector 22 selects an algorithm for channel estimationbased on the calculated parameter. For example, if the temporalvariation of the channel is low, a first channel estimation algorithmwith good performance in channels with low temporal variation may beselected. Conversely, if the temporal variation of the channel is high,a second channel estimation algorithm with good performance in channelswith high temporal variation may be selected. The channel is estimatedusing the selected channel estimation algorithm.

In another embodiment, the parameter indicative of accuracy of a channelestimation algorithm may be based on a first error associated with afirst algorithm and a second error associated with a second algorithm.For example, the first error may be a mean square error of a firstalgorithm and the second error may be a mean square error of a secondalgorithm. The algorithm selected by the algorithm selection function 22may be the algorithm with the least mean square error associatedtherewith. The channel is then estimated using the selected channelestimation algorithm.

Thus, in one embodiment, a parameter is calculated that is based atleast in part on temporal variation of the channel to be estimated. Inanother embodiment, a parameter is calculated that is based at least inpart on a difference between error functions associated with each of aplurality of channel estimation algorithms. Selection of an algorithm toestimate the channel may be based on a comparison of the parameter to athreshold. The threshold may be based on a probability function.

A method of calculating a parameter indicative of an accuracy of achannel estimation algorithm based on temporal variation of the channelis explained below.

For illustration purposes, the following example and explanation isbased on a two-antenna receiver and a one-antenna transmitter. Let nε{1,. . . , n₁, . . . , n₂, . . . , N} be the OFDM symbol index, where n₁,n₂, are the indices for the pilots of slot one and slot two respectively(i.e., pilot indices in one subframe). Also, let fε{1, . . . , F} be thesubcarrier index. The coefficients of the frequency response of the(2×1) system at the n^(th) OFDM symbol, with the (2F×1) vector aredefined as:

${H(n)} = \begin{bmatrix}{H^{11}(n)} \\{H^{21}(n)}\end{bmatrix}$

where H¹¹(n),H²¹(n), are (F×1) vectors of the channel frequency responsecoefficients from receive antenna one and two respectively. Also, letZ(n) be the (2F×1) noise vector at the OFDM symbol^(n), which is complexGaussian-distributed according to CN(0,σ_(Z) ²I_(2F×2F)). Then theestimate of the channel frequency response on the n^(th) OFDM symbol asthe (2F×1) vector is:

{tilde over (H)}(n)=H(n)+Z(n)

or equivalently,

$\begin{bmatrix}{{\overset{\sim}{H}}_{1}^{11}(n)} \\\vdots \\{{\overset{\sim}{H}}_{F}^{21}(n)}\end{bmatrix} = {\begin{bmatrix}{H_{1}^{11}(n)} \\\vdots \\{H_{F}^{21}(n)}\end{bmatrix} + {Z(n)}}$

where H_(f) ^(ij)(n) and {tilde over (H)}_(f) ^(ij)(n) (iε[1,2] andj=1), are the coefficients of the channel frequency response, and itsestimate, respectively, for the n^(th) OFDM symbol, from the i^(th)receive antenna and j^(th) transmit antenna, at the f^(th) subcarrier.Assuming that the channel coefficients from different transmit-receiveantenna pairs are uncorrelated to each other, the power can be writtenas E{|H_(f) ^(ij)(n)|²}=P, where P is the transmitted power and theaverage is taken over all the symbols n.

Having estimated the channel based on the known pilot symbols, astatistical parameter, θ_(n) (stored as parameter 20), may be calculatedfrom the channel estimate that is indicative of a temporal variation ofa channel. Consequently, the statistical parameter θ_(n) is indicativeof an accuracy of a channel estimation algorithm for interpolating thechannel response during data transmission between reference symbols(pilot symbols). The statistical parameter θ_(n) may be calculated andcompared to a threshold every sub-frame to determine which of a group oftwo or more channel estimation algorithms will most accurately estimatethe channel. Thus, θ_(n) estimates the temporal variation in the channelfrom one pilot symbol to the next pilot symbol in a given sub-frame.

In some embodiments, the statistical parameter θ_(n) may be calculatedby:

$\theta = {{\frac{1}{2N_{T}N_{R}F}{\sum\limits_{j = 1}^{N_{T}}\; {\sum\limits_{i = 1}^{N_{R}}\; {\sum\limits_{f = 1}^{F}\; \left( {{{Re}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{1} \right)} \right)} - {{Re}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{2} \right)} \right)}} \right)^{2}}}}} + \left( {{{Im}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{1} \right)} \right)} - {{Im}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{2} \right)} \right)}} \right)^{2}}$

where N_(T) is a number of transmit antennas, N_(R) is a number ofreceive antennas, and F is a number of sub carriers. Thus, thestatistical parameter may be based on the squares of the differencesbetween channel estimates based on known pilot symbols. Note thatanother way to measure temporal variation using the parameter φ is givenby:

$\varphi = {{\frac{1}{2N_{T}N_{R}}{\sum\limits_{j = 1}^{N_{T}}\; {\sum\limits_{i = 1}^{N_{R}}\; \left( {{\frac{1}{F}{\sum\limits_{f = 1}^{F}\; {{Re}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{1} \right)} \right)}}} - {\frac{1}{F}{\sum\limits_{f = 1}^{F}\; {{Re}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{2} \right)} \right)}}}} \right)^{2}}}} + \left( {{\frac{1}{F}{\sum\limits_{f = 1}^{F}\; {{Im}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{1} \right)} \right)}}} - {\frac{1}{F}{\sum\limits_{f = 1}^{F}\; {{Im}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{2} \right)} \right)}}}} \right)^{2}}$

The value θ may be normalized by the received power as follows:

$\theta_{n} = \frac{\theta}{{\overset{\sim}{P}}_{r}}$

Where {tilde over (P)}_(r)=P+η is the estimated received power which isequal to the transmit power P, plus the noise power η channelestimation. The normalized statistic, θ_(n), is then independent of thechannel normalization procedure used.

As noted above, θ_(n) may be compared to a threshold. If θ_(n) exceeds athreshold, indicating a fast time-varying channel, a first channelestimation algorithm, such as a linear interpolation algorithm, may beselected to estimate the channel. If θ_(n) does not exceed thethreshold, indicating a slow time-varying channel, a second channelestimation algorithm, such as an averaging algorithm, may be selected toestimate the channel.

FIG. 2 is a graph 30 showing how the switch point depends on signal tonoise ratio versus Doppler frequency. Note that a linear relationshipmay exist between signal to noise ratio (SNR) and Doppler frequency. Inparticular, as Doppler frequency increases, SNR decreases. For a givenDoppler frequency, when the SNR is high, it may be desirable to use alinear interpolation algorithm to estimate the channel. Conversely, fora given Doppler frequency, when the SNR is low, it may be desirable touse an averaging algorithm to estimate the channel. In one embodiment,the threshold to which θ_(n) is compared is chosen to favor selection ofthe averaging algorithm due to the large penalty in terms of estimationerror when mistakenly choosing linear interpolation as opposed to theaveraging algorithm.

FIG. 3 is a graph of several cumulative distribution functions (CDFs)used to determine a threshold Θ to which the calculated parameter θ_(n)is compared. Each curve shows the distribution of θ_(n), which iscalculated based on a limited number of samples. Moreover, each curvespecifies a given channel condition (i.e., Doppler and SINR level) basedon FIG. 2 but where the SNR level is backed off by 5 dB to ensure thatfor that channel condition, an averaging algorithm should be selected.To set the threshold Θ then, a high probability value for θ_(n) is set(i.e., 99%) which corresponds to a threshold Θ=0.9 in the case of aDoppler of 225 Hertz with SINR=5 dB (see curve 32 a in FIG. 3).Therefore, if the calculated θ_(n)≦Θ then the channel is considered tohave a Doppler frequency less than or equal to 225 Hz and an averagingalgorithm is selected. On the other hand, if the calculated θ_(n)>Θ thenthe channel is considered to have a Doppler frequency higher than 225 Hzand a linear interpolation algorithm is selected. The rest of curves inFIG. 3 are described as follows. The curve 32 b is a CDF for a Dopplerfrequency of 125 Hz and a SNR of 10 dB. The curve 32 c is a CDF for aDoppler frequency of 70 Hz and a SNR of 15 dB. The curve 32 d is a CDFfor a Doppler frequency of 37 Hz and a SNR of 20 dB. The curve 32 e is aCDF for a Doppler frequency of 5 Hz and a SNR of 25 dB. A similarprocess to the one described above may be performed for other Dopplerfrequency-SNR ratio combinations resulting in the following table.

SNR (dB) SNR range (dB) CDF point chosen Θ 5 (2.5, 7.5) P_(ETU225)(θ ≦Θ) = 0.99 0.9 10 (7.5, 12.5) P_(ETU125)(θ ≦ Θ) = 0.99 0.38 15 (12.5,17.5) P_(EVA70)(θ ≦ Θ) = 0.99 0.095 20 (17.5, 22.5) P_(EVA37)(θ ≦ Θ) =0.99 0.038 25 (22.5, —) P_(EPA5)(θ ≦ Θ) = 0.99 0.009

An alternative and simplified method to determining a threshold Θ fromthe cumulative distribution function (CDF) curves of FIG. 3 is asfollows. Note from the table that at high percentage values (p>90%), thefollowing relationship between Θ and the SNR holds:

${\Theta (p)} = \frac{\overset{\sim}{\Theta}(p)}{S\; \overset{\sim}{N}R_{lin}}$

Where

${S\; \overset{\sim}{N}R_{lin}} = \frac{P}{\eta}$

corresponds to the estimated SNR of a channel estimator in linear scale,η is the estimated noise level after channel estimation, and {tilde over(Θ)}(p) represents a nominal threshold value at percentage point p andat SNR=0 dB. As a result, it is no longer necessary to calculatedifferent threshold values Θ(p) from the CDF curves shown in FIG. 3.Instead the nominal threshold value {tilde over (Θ)}(p) is calculatedand then divided by the estimated SNR level to obtain Θ(p). Furthermore,the nominal threshold value at any percentage point p can beapproximated by the following fourth degree polynomial expression.

{tilde over (Θ)}(p)≈−2.3339 p⁴+8.0448 p³−10.8173 p²+6.8343 p−0.7244

This expression is accurate for values of pε[50,100]%

Thus, in one embodiment, a statistical parameter θ_(n) indicative of atemporal variation of the channel between successive pilot symbols maybe computed and compared to a threshold value Θ. The threshold may beapproximated by a polynomial function and may also be based on a signalto noise ratio measured after channel estimation.

When the statistical parameter η_(n) is greater than the threshold Θ, alinear interpolation algorithm, or another channel estimation algorithmthat exhibits good performance for fast temporal variations of thechannel, may be selected to estimate the channel. Conversely, when thestatistical parameter θ, is less than the threshold Θ, an averagingalgorithm, or another channel estimation algorithm that exhibits goodperformance for slow temporal variations of the channel, may be selectedto estimate the channel.

An alternative to using the statistical parameter θ_(n) and thethreshold Θ as a basis for selecting a channel estimation algorithm, onemay use mean square errors of multiple algorithms as a basis forchoosing a channel estimation algorithm. For example, the mean squareerror of an averaging algorithm, MSE_(avg) and the mean square error ofa linear interpolation algorithm MSE_(lin), may be computed to determinewhich algorithm is better i.e., the algorithm with the lowest meansquare error. In other words, the processor 18 may compute as follows.

MSE_(Δ) = MSE_(avg) − MSE_(linear) where${MSE}_{avg} = {\sum\limits_{{n = 1},{n \neq n_{1}},n_{2}}^{N}\; {E\left\{ {{\Delta_{a}(n)}}^{2} \right\}}}$

And N is the number of symbols per sub-frame, and

${E\left\{ {{\Delta_{a}(n)}}^{2} \right\}} = {{\frac{3P}{2}{J_{0}(0)}} + {\frac{P}{2}{J_{0}\left( {\omega_{0}\left( {n_{2} - n_{1}} \right)} \right)}} - {{PJ}_{0}\left( {\omega_{0}\left( {n_{1} - n} \right)} \right)} - {{PJ}_{0}\left( {\omega_{0}\left( {n_{2} - n} \right)} \right)} + \frac{\sigma_{z}^{2}}{2}}$$\mspace{20mu} {{MSE}_{linear} = {\sum\limits_{{n = 1},{n \neq n_{1}},n_{2}}^{N}\; {E\left\{ {{\Delta_{l}(n)}}^{2} \right\}}}}$  where${E\left\{ {{\Delta_{l}(n)}}^{2} \right\}} = {{2{{P\left\lbrack {\left( \frac{n - n_{1}}{n_{2} - n_{1}} \right)^{2} - \frac{n - n_{1}}{n_{2} - n_{1}}} \right\rbrack}\left\lbrack {{J_{0}(0)} - {J_{0}\left( {\omega_{0}\left( {n_{2} - n_{1}} \right)} \right)} + \frac{\sigma_{z}^{2}}{P}} \right\rbrack}} + {2{{PJ}_{0}(0)}} + \sigma_{z}^{2} - {2P{\frac{n - n_{1}}{n_{2} - n_{1}}\left\lbrack {{J_{0}\left( {\omega_{0}\left( {n_{2} - n} \right)} \right)} - {J_{0}\left( {\omega_{0}\left( {n_{1} - n} \right)} \right)}} \right\rbrack}} - {2{{PJ}_{0}\left( {\omega_{0}\left( {n_{1} - n} \right)} \right)}}}$

where P is transmit signal power, J₀(7ω₀) is a zero-order Besselfunction of the first kind and ω₀=2πf_(D)T_(s), f_(D) is the Dopplerfrequency, and T_(s) is the OFDM symbol interval. σ_(Z) ² is theestimation noise variance. By appropriate substitution of theseexpressions it can be shown that

MSE _(Δ) =MSE _(avg) −MSE _(linear)≈8P(1−J ₀(7ω₀))−8.28σ_(z) ²

where 1−J₀(7ω₀) can be derived from θ from the following equation:

θ=2γ(1−J ₀(7ω₀))+2σ_(z) ²

Therefore,

MSE _(Δ)≈4θ−16.28σ_(z) ²

Then MSE_(Δ) can be compared to a threshold, which can be derived asdescribed above with respect to Θ.

Thus, in one embodiment, a mean square error function that is adifference between a mean square error of a first channel estimationalgorithm and the mean square error of a second channel estimationalgorithm may be computed. The mean square error function can then becompared to a threshold to determine which of the first and secondchannel estimation algorithms to select to estimate the channel.

FIG. 4 is a flow chart of an exemplary process for selecting a channelestimation algorithm. Initially, a threshold is computed (step S100).Then, for every sub frame (step S102), a parameter indicative of anaccuracy of a channel estimation algorithm is calculated, (step 104).This may be the statistical parameter θ_(n) described above or the meansquare error described above. The parameter is then compared to athreshold, (step S106). This may be the threshold Θ described above. Ifthe parameter exceeds the threshold, a first channel estimationalgorithm may be selected (step S108). If the parameter does not exceedthe threshold, a second channel estimation algorithm may be selected(step S110). In one embodiment, the first channel estimation algorithmis a linear interpolation algorithm and the second channel estimationalgorithm is an averaging algorithm. Once the channel estimationalgorithm is selected, the channel is estimated (step S112).

FIG. 5 is a flow chart of an exemplary process for selecting a channelestimation algorithm based on a measure of a temporal variation of thechannel. Initially, a threshold value is obtained from a cumulativedistribution function (CDF) or an approximation of a CDF, such as apolynomial approximation of a CDF (step S114). The particular CDF may bebased on a selected Doppler frequency and a selected SNR. At each subframe (step S116), a statistical parameter that is indicative of atemporal variation of the channel based on channel estimates that arebased on the known pilot symbols is calculated (step S118). The computedstatistical parameter is normalized by, for example, the received power(step S120). The normalized statistical parameter is compared to thethreshold (step S122). If the normalized statistical parameter is lessthan the threshold, an averaging algorithm is selected (step S124). Ifthe normalized statistical parameter is greater than the threshold, alinear interpretation algorithm is selected (step S126). The channel isthen estimated using the selected channel estimation algorithm (stepS128).

FIG. 6 is a flow chart of an exemplary process for selecting a channelestimation algorithm based on a computed mean square error. Initially, athreshold value is obtained from a cumulative distribution function(CDF) or an approximation of a CDF, such as a polynomial approximationof a CDF (step S132) At each sub frame (step S134), a difference betweena first error function of a first channel estimation algorithm and asecond error function of a second channel estimation algorithm iscomputed (step S136). The particular CDF may be based on a selectedDoppler frequency and a selected SNR. The computed difference betweenthe first and second error functions is compared to a threshold (stepS138). If the difference is less than the threshold, the first algorithmis selected (step S140), and if the difference is greater than thethreshold, the second algorithm is selected (step S142). The channel isestimated using the selected channel estimation algorithm (step S144).

The present invention can be realized in hardware, or a combination ofhardware and software. Any kind of computing system, or other apparatusadapted for carrying out the methods described herein, is suited toperform the functions described herein. A typical combination ofhardware and software could be a specialized computer system, e.g., arouter, having one or more processing elements and a computer programstored on a storage medium that, when loaded and executed, controls thecomputer system such that it carries out the methods described herein.The present invention can also be embedded in a computer programproduct, which comprises all the features enabling the implementation ofthe methods described herein, and which, when loaded in a computingsystem is able to carry out these methods. Storage medium refers to anyvolatile or non-volatile storage device.

Computer program or application in the present context means anyexpression, in any language, code or notation, of a set of instructionsintended to cause a system having an information processing capabilityto perform a particular function either directly or after either or bothof the following a) conversion to another language, code or notation; b)reproduction in a different material form.

Thus, one embodiment is a computer readable medium containing computerreadable instruction that, when executed by a processor, cause theprocessor to perform functions for selecting a channel estimationalgorithm. The functions include calculating a parameter indicative ofan accuracy of a channel estimation algorithm for estimating a channelin a communication system. The functions further include selecting achannel estimation algorithm to estimate a channel based on theparameter. In one embodiment, the parameter is based on a first errorassociated with a first algorithm and a second error associated with asecond algorithm. The first and second errors may be mean square errors.The first algorithm may be an averaging algorithm and the secondalgorithm may be a linear interpolation algorithm. In other embodiments,the parameter may be based at least in part on a temporal variation ofthe channel. The parameter also may be based at least in part on ameasure of the estimated received signal to noise ratio after channelestimation.

Thus, the switching algorithm described herein is a low complexityalgorithm exhibiting performance comparable to a minimum means squareerror (MMSE) algorithm, but has the advantage of not requiring knowledgeof a Doppler frequency. The switching algorithm exhibits robustperformance in a wide range of channel conditions, including transmitand receive antenna correlation, a varying number of resource blocks,low and high Doppler frequencies, low and high delay spread anddifferent levels of SINR.

In addition, unless mention was made above to the contrary, it should benoted that all of the accompanying drawings are not to scale. It will beappreciated by persons skilled in the art that the present invention isnot limited to what has been particularly shown and described hereinabove. In addition, unless mention was made above to the contrary, itshould be noted that all of the accompanying drawings are not to scale.A variety of modifications and variations are possible in light of theabove teachings without departing from the scope and spirit of theinvention, which is limited only by the following claims.

1. A method of selecting an algorithm for channel estimation in acommunication system, the method comprising: calculating a parameterindicative of an accuracy of a channel estimation algorithm; andselecting between a first channel estimation algorithm and a secondchannel estimation algorithm based on the parameter.
 2. The method ofclaim 1, wherein the parameter indicative of the accuracy of the channelestimation algorithm is a parameter indicative of an amount of atemporal variation in a channel estimate.
 3. The method of claim 2,wherein the selecting includes: comparing the parameter to a threshold;and determining when the parameter indicates one of a low temporalvariation and a high temporal variation.
 4. The method of claim 3,wherein an averaging algorithm is selected if the parameter indicates alow temporal variation, and a linear interpolation algorithm is selectedif the parameter indicates a high temporal variation.
 5. The method ofclaim 3, wherein the threshold is based at least in part on aprobability distribution of the parameter.
 6. The method of claim 5,wherein the threshold is further based at least in part on a signal tonoise ratio of a signal transmitted through the channel, the signal tonoise ratio being measured after channel estimation.
 7. The method ofclaim 3, wherein the threshold is approximated by a polynomial functionbased on a probability distribution of the parameter.
 8. The method ofclaim 7, wherein the threshold approximation is given by${\Theta (p)} = \frac{\overset{\sim}{\Theta}(p)}{S\; \overset{\sim}{N}R_{lin}}$where SÑR_(lin) is an estimated received signal to noise ratio in linearscale after channel estimation, and{tilde over (Θ)}(p)≈−2.3339 p⁴+8.0448 p³−10.8173 p²+6.8343 p−0.7244where pε[50,100]% is a percentage point.
 9. The method of claim 1,wherein the parameter is calculated based on a summation of squaredifferences of the channel estimates at different times, normalized byan estimated received power, the estimate of the received power beingdetermined after channel estimation.
 10. The method of claim 9, whereinthe summation is over a number of transmit antennas, a number of receiveantennas, and a number of subcarriers.
 11. The method of claim 9,wherein the parameter is given by:$\theta_{n} = \frac{\theta}{{\overset{\sim}{P}}_{r}}$ and where {tildeover (P)}_(r) is an estimated received power after channel estimationand the summation is given by one of$\theta = {{\frac{1}{2N_{T}N_{R}F}{\sum\limits_{j = 1}^{N_{T}}\; {\sum\limits_{i = 1}^{N_{R}}\; {\sum\limits_{f = 1}^{F}\; \left( {{{Re}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{1} \right)} \right)} - {{Re}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{2} \right)} \right)}} \right)^{2}}}}} + \left( {{{Im}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{1} \right)} \right)} - {{Im}\left( {{\overset{\sim}{H}}_{f}^{ij}\left( n_{2} \right)} \right)}} \right)^{2}}$and a multiple thereof, and where N_(T) is a quantity of transmitantennas, N_(R) is a quantity of receive antennas, F is a number ofsubcarriers, and {tilde over (H)}_(j) ^(ij)(n_(k)) is an estimate of thechannel frequency response between antennas i and j at a time n_(k) ofthe f^(th) subcarrier.
 12. The method of claim 1, wherein the parameteris based on an error function.
 13. The method of claim 12, wherein theparameter is based on a difference between an approximate mean squareerror of an averaging algorithm and an approximate mean square error ofa linear interpolation algorithm.
 14. The method of claim 13, whereinthe difference is approximately given byMSE _(Δ) =MSE _(avg) −MSE _(linear)≈8P(1−J ₀(7ω₀))−8.28σ_(z) ² where Pis a transmit signal power, J_(o) is a zero order Bessel function of thefirst kind, ω_(o) is ω₀=2πf_(D)T_(s)f_(D) is a Doppler frequency, T_(s)is the OFDM symbol interval and σ_(z) ² is an estimation of a noisevariance of a channel, and where J₀(7ω₀) is obtained fromθ=2P(1−J ₀(7ω₀))+2σ_(z) ².
 15. A computer readable medium containingcomputer readable instruction that, when executed by a processor, causethe processor to perform functions that include: calculating a parameterindicative of an accuracy of a channel estimation algorithm forestimating a channel in a communication system; and selecting a channelestimation algorithm to estimate a channel based on the parameter. 16.The computer readable medium of claim 15, wherein the parameter is basedon a first error associated with a first algorithm and a second errorassociated with a second algorithm.
 17. The computer readable medium ofclaim 16, wherein the first error and the second error are mean squareerrors, the first algorithm being an averaging algorithm and the secondalgorithm being a linear interpolation algorithm.
 18. The computerreadable medium of claim 15, wherein the parameter is based at least inpart on a temporal variation of the channel.
 19. The computer readablemedium of claim 18, wherein the parameter is further based at least inpart on a measure of an estimated received signal to noise ratio afterchannel estimation.
 20. A communication device that performs a channelestimate based on an algorithm, the device comprising: a memory, thememory to store at least one parameter indicative of an accuracy of achannel estimation algorithm for channel estimation; and a processor,the processor in communication with the memory, the processor operableto: calculate the at least one parameter; and select a channelestimation algorithm based on the at least one parameter.
 21. Thecommunication device of claim 20, wherein the at least one parameter isbased at least in part on a temporal variation of the channel.
 22. Thecommunication device of claim 20, wherein the at least one parameter isbased at least in part on a first error function of a first algorithmand a second error function of a second algorithm.
 23. The communicationdevice of claim 20, wherein selection of an algorithm is based at leastin part upon comparing at least one parameter to a threshold.
 24. Thecommunication device of claim 23, wherein the threshold is based atleast in part on a probability function.